/*
输入：

共两行

第一行 N （ 1<=N<=100 ），代表矩阵个数。

第二行有 N+1 个数，分别为 A1 、 A2 ...... An+1 （ 1<=Ak<=2000 ）， Ak 和 Ak+1 代表第 k 个矩阵是个 Ak X Ak+1 形的。

输出：

共两行

第一行 M ，为最优代价。注：测试用例中 M 值保证小于 2^31

第二行为最优顺序。如 (A1((A2A3)A4)) ，最外层也加括号。

注意:测试用例已经保证了输出结果唯一,所以没有AAA的情况.
*/

/*
测试用例：
输入：
6↵
30 35 15 5 10 20 25↵
输出：
15125↵
((A1(A2A3))((A4A5)A6))↵
*/